Information Criterion-Based Systems And Methods For Constructing Combining Weights For Multimodel Forecasting And Prediction

ABSTRACT

Systems and methods are provided for a computer-implemented method for automatically generating a weighted average forecast model that includes receiving a plurality of forecasting models and time series data. At least one parameter of each of the received forecasting models is optimized utilizing the received time series data. A weighting factor is generated for each of the plurality of optimized forecasting models utilizing an information criteria value indicating fit quality of each of the optimized forecasting models, and the generated weighting factors are stored.

FIELD

The technology described in this patent document relates generally tothe field of model forecasting and prediction and more specifically tothe generation of combining weights for multimodel forecasting andprediction.

BACKGROUND

Accurate forecasting of future sales and other business variables is ofgreat value to organizations. Accurate forecasts of product demands areneeded for optimal inventory management, pricing, and resource planning.Automated computer algorithms for generating statistically-basedpredictions for larger numbers of items with no or minimal humanintervention is beneficial for firms that sell many product itemsthrough numerous geographically distinct sales outlets as forecasts areoften needed for each of tens of thousands of stock keeping units foreach of hundreds of stores. In addition to business forecasting,statistical models for prediction are used in a wide variety ofindustrial applications.

For each item requiring forecasts or predictions, multiple statisticalforecasting models are available. Deciding which of the availablemodels, or combination of models, to use for predicting future valuesfor a given item is a challenging problem. The utilization of multiplemodels in a prediction may offer improved predictive performance. Tocapitalize on this improved performance, systems and methods ofgenerating weights for a weighted average of model outputs is describedthat uses information criteria indicative of fit quality of the utilizedmultiple models in determining model weights.

SUMMARY

In accordance with the teachings provided herein, systems and methodsare provided for automatically generating a weighted average forecastmodel. For example, a plurality of forecasting models and time seriesdata are received. At least one parameter of each of the receivedforecasting models is optimized utilizing the received time series data.A weighting factor is generated for each of the plurality of optimizedforecasting models utilizing an information criteria value indicatingthe fit quality of each of the optimized forecasting models, and thegenerated weighting factors are stored.

As another illustration, systems and methods may be used forautomatically generating a weighted average forecast model that includesa plurality of forecasting models and a file containing time series dataindicative of transactional activity. A model fitter receives theplurality of forecasting models and the file of time series data andoptimizes at least one parameter of each of the plurality of forecastingmodels based on the time series data. A forecast calculator isconfigured to receive the plurality of optimized forecasting models andgenerates a forecasted output for each of the plurality of optimizedforecasting models. A model evaluator is configured to receive theplurality of optimized forecasting models and generate a weightingfactor utilizing an information criteria for each of the forecastingmodels indicating fit quality of each of the optimized forecastingmodels.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram depicting a computer-implemented environmentwherein users can interact with an attribute-based hierarchy processingsystem.

FIG. 2 is a block diagram further detailing the inputs and outputs ofthe multimodel combining weights processing system.

FIG. 3 depicts a block diagram further describing the function of themultimodel combining weights processing system.

FIG. 4 depicts a block diagram describing the function of the multimodelcombining weights processing system.

FIG. 5 is a flow diagram illustrating a process for generating amultimodel forecast output.

FIG. 6 is a flow diagram illustrating a process for reusing thegenerated weighting factors to produce weighted average forecasts inlight of updated time series data.

FIGS. 7 a-7 d are a flow diagram of a multimodel forecast creationprocess.

FIG. 8 is a block diagram depicting an environment wherein a user caninteract with a attribute-based hierarchy processing system.

DETAILED DESCRIPTION

FIG. 1 is a block diagram depicting a computer-implemented environmentwherein users 32 can interact with a multimodel combining weightsprocessing system 34 hosted on one or more servers 38 through a network36. The system 34 contains software operations or routines forgenerating weighting factors for each model in a set of multiple modelsusing an information criteria value indicating the quality of fit andcomplexity of the models.

The generated weighting factors are used in conjunction with forecastsor predictions from the multiple models in order to generate a compositemodel that may have higher predictive capabilities than individualmodels on their own. For example, in predicting future sales for aproduct, a set of predictive models is chosen. The models are fittedaccording to historical data. The fitted models are examined forquality, and based on this quality assessment, a combining weight isassigned to the model. Forecasts are made by each of the models in theset of predictive models, and the forecasts are multiplied by thecombining weights and summed to generate a weighted average multimodelforecast.

The multimodel combining weights processing system 34 can be anintegrated web-based analysis tool that provides users flexibility andfunctionality for performing model forecasting or prediction or can be awholly automated system. One or more data stores 40 can store the datato be analyzed by the system 34 as well as any intermediate or finaldata generated by the system 34. For example, data store(s) 40 can storethe plurality of models whose outputs are to be averaged and time seriesdata used to calibrate the models and make predictions. Examples of datastore(s) 40 can include relational database management systems (RDBMS),a multi-dimensional database (MDDB), such as an Online AnalyticalProcessing (OLAP) database, etc.

The users 32 can interact with the system 34 in a number of ways, suchas over one or more networks 36. One or more servers 38 accessiblethrough the network(s) 36 can host the multimodel combining weightsprocessing system 34. It should be understood that the multimodelcombining weights processing system 34 could also be provided on astand-alone computer for access by a user or in other computingconfigurations.

FIG. 2 is a block diagram further detailing at 50 the inputs and outputsof the multimodel combining weights processing system 34. Transactionaldata 52 is accumulated and may be stored over a period of time in anaccumulation module 54. The transactional data 52 may be related to anynumber of indicators including product sales, inventory levels,resources utilized, traffic volume, weather, stock trading price, stockvolume, currency rates, as well as many others. The transactional data52 collected in the accumulation module 54 is associated with time unitsto generate time series data 56 which is input into the multimodelcombining weights processing system 34. The multimodel combining weightsprocessing system 34 also receives a set of forecasting models 58 whoseoutputs are to be combined to generate a weighted average forecastedoutput 60.

FIG. 3 depicts at 70 a block diagram describing an example function ofthe multimodel combining weights processing system 34. The multimodelcombining weights processing system 34 receives a set of forecastingmodels 58 and time series data 56 inputs. A model fitter 72 optimizes atleast one parameter of each of the received forecasting models 58utilizing the received time series data 56. This optimization may bedone, for example, utilizing a least-squares regression or by anotherstatistical technique. The model fitter 72 outputs a plurality ofoptimized forecasting models 74.

A model evaluator 76 receives the optimized forecasting models 74 andgenerates a weighting factor for each of the plurality of optimizedmodels 74. The generation of the weighting factors utilizes aninformation criteria value that indicates fit quality and complexity ofeach of the optimized forecasting models. The generation of weightingfactors will be discussed in detail herein. The generated weightingfactors are then stored in a data store 78. The data store may be atemporary storage medium such as random access memory, or the data storemay be a longer term storage medium such as a hard drive, CD, DVD, aswell as many others.

In the example of FIG. 3, the multimodel combining weights processingsystem 34 also receives updated time series data 80 as an input. Theupdated time series data is received by a forecast calculator 82 thatgenerates a model forecasted output 84 for each of the optimizedforecasting models 74 in light of the received updated time series data80. The generated model forecasted outputs 84 are weighted according tothe stored weighting factors from the data store 78 in the weightedaverage calculator 86 and summed to produce a weighted averageforecasted output 60.

FIG. 4 depicts at 90 a block diagram describing another example functionof the multimodel combining weights processing system 34. In the exampleof FIG. 4, the multimodel combining weights processing system 34receives a set of forecasting models 58 and time series data 56 that arepassed to the model fitter 72. The model fitter 72 is configured toreceive the plurality of forecasting models 58 and the time series data56 and optimizes at least one parameter of each of the forecastingmodels based on the time series data. This optimization may be through aleast squares regression or other statistical technique. The modelfitter 72 outputs a set of optimized forecasting models 74.

The optimized forecasting models 74 are received by both the modelevaluator 76 and the forecast calculator 82. The model evaluator 76 isconfigured to generate a weighting factor 92 utilizing an informationcriteria for each of the optimized forecasting models 74 that indicatesthe fit quality and complexity of each of the optimized forecastingmodels 74. The forecast calculator 82 is configured to receive theplurality of optimized forecasting models and to generate a modelforecasted output 84 for each of the optimized forecasting models 74.The weighted average calculator 86 weights the model forecasted outputs84 according to the generated weighting factors 82 and sums the resultto generate the weighted average forecasted output 60.

The process of generating a forecast as shown at 82 in FIGS. 3 and 4 isherein further described. A set of items, D, is selected for whichfuture demand is to be forecast where D_(i) is the demand for item i.For example, D_(i) might be monthly demand for product item number 1234in sales outlet number 567. For each item, a numerical measure, y, is tobe forecast based on zero or more predictors, x, which may be differentfor each item. For example, one may wish to predict the number of salesin cases for an item using price per unit and measures of salespromotion activities as predictors.

For each item, D_(i), a set of predictive models is chosen to forecast anumerical measure. Each model, m_(j), contains a vector of variableparameters, θ_(j), which should be calibrated to the data available fora given item before the model will produce forecasts for that item.Thus, in more complete notation, m_(j)=m_(j)(Y_(s), X_(s), θ*_(j)) whereθ* is the estimate of θ produced by fitting the model to past data for yand x (Y_(s) and X_(s) respectively). Model parameters may be calibratedto past data using a variety of methods such as the maximum likelihoodmethod, the least squares method, as well as others.

For each item, an array of weights is generated, assigning one weightw_(j) to each model in the set of predictive models. The combinedforecast for an item is then defined by the formula:

y* _(t) =Σw _(j) ·y* _(j,t),

which is the weighted average of the forecasts from the fitted modelsfor this item.

Combined forecasts using the constant weights w_(j)=1/k (i.e., a simpleaverage of the k model forecasts) may be superior to the forecast of thebest individual model. Even better forecasts may be produced by usingnon-constant weights optimized for each item.

The Akaike Information Criterion (“AIC”) is an indicator of model fitquality and complexity. The AIC is defined as:

AIC=−2·ln(L)+2·P,

where L is the likelihood of the model (taken from a maximum likelihoodestimation of the parameters) and P is the number of fitted parametersin the model (that is, the number of elements in the parameter vectorθ*). The AIC may also be computed as:

AIC=n·ln(mse)+2·P,

where mse is the mean squared error and n is the number of data pointsto which the model is calibrated.

The AIC statistic trades off model fit, measured by the log likelihoodor log mean squared error, and a penalty for model complexity, measuredby the number of free parameters. It has theoretical justification as anapproximation to the expected Kullback-Leibler discrepancy (K-Linformation) between the model and the unknown process that generatedthe data. This property of AIC is an asymptotic results, and in smallsample sizes AIC is a biased estimate of the expected K-L information.An adjustment to AIC which corrects for this finite sample bias iscalled AIC_(c), which is defined as:

AIC _(c) =AIC+(2·P·(P+1))/(n−P−1).

The best known of the alternative information criteria is the BayesianInformation Criterion of BIC, which is defined as:

BIC−2·ln(L)+ln(n)·P.

Note that BIC is like AIC but uses the log of the sample size instead of2 as the penalty weight for the number of parameters. It should be notedthat other information criteria may be used as well as variations of thecriteria described above.

For each item, all models are fit to the available data by maximumlikelihood or least squares or another method. For each fitted model,the information criteria value is calculated. The calculated informationcriteria may then be utilized to calculate raw weights by calculating adifference value, Δ_(j), for each calculated information criteria valuerepresenting the difference between that information criteria value andthe smallest single information criteria value calculated for the set offitted models. Raw weights may be calculated as

ω_(j) =exp(−Δ_(j)/2),

and the calculated raw weights may then be normalized according to

w _(j=ω) _(j/)(Σω_(j)).

If the AIC or AIC_(c) is used as the information criterion, then thecombining weight of a model reflects the relative weight of evidence forthe model as a good approximation to the true data generating process ofthat model. Thus, this method may be expected to produce superiorforecasts because the benefits of model combination are gained whilegiving greater weight to better models and little weight to poor models.

If information criteria other than AIC and its variants are used in thismethod, then the theoretical justification based on the Kullback-Leiblerdiscrepancy is lacking but may still expect superior forecastingperformance because of the similarity of these criteria to the AIC.

A simple generalization is to compute raw weights as

ω_(j) =exp(−λ·Δ_(j)/2),

where the constant λ is an adjustment that may be specified by the user,and Δ_(j) is equal to the difference between the information criteriavalue for a model and the smallest information criteria of all of themodels in the set of selected predicted models.

When λ=1 the usual Akaike weights are produced. When λ=0 the weights areall equal and w_(j)=1/k, so the calculations reduce to the equallyweighted simple-average-of-forecasts method. When 0<λ<1, the resultingmethod is a compromise between the information criterion weights andequal weights.

When λ is set to large values much greater than one (e.g., λ>10), theweight for the model with the smallest information criterion (m⁰, forwhich Δ_(j)=0) tends to w⁰=1 and weights for all models with Δ_(j)>0tend to w_(j)=0. Thus, for large λ the resulting method is the minimumIC best single model selection approach. When λ>1 but λ is moderate insize (e.g., λ=1.5), a compromise between the information criterionweighted combined forecast and the best single model forecast is theresult.

Thus, a continuum of forecast combination methods are supplied, indexedby λ, ranging between the two extremes of single best model selectionand equally weighted average combination, with the default λ=1 caseintermediate between these extremes and providing the theoreticallyoptimum combination based on Kullback-Leibler information.

FIG. 5 depicts at 100 a flow diagram illustrating a process forgenerating a multimodel forecast output. At step 102, a plurality offorecasting models and time series data are received. At least oneparameter of each of the received forecasting models is optimized inlight of the time series data in step 104. Weighting factors for theoptimized models are generated in step 106 using an information criteriavalue. A forecasted output is generated for each of the optimizedforecasting models in step 108, and a weighted average of the generatedforecast outputs is calculated using the weighting factors in step 110.

FIG. 6 is a flow diagram illustrating a process for reusing generatedweighting factors to produce weighted average forecasts in light ofupdated time series data at 120. At step 122 the weighting factorsdescribed with reference to FIG. 5 are stored. Updated time series datais received in step 124, and forecast outputs for each of the models aregenerated in step 126 in light of the updated time series data. Aweighted average forecast is then output in step 128 by weighting eachof the forecast outputs according to the saved weighting factors. Thisprocess may be repeated any number of times as indicated at 130 as newdata is input into the multimodel processing system 34.

FIGS. 7 a-7 d are a flow diagram of an example multimodel forecastcreation process. FIG. 7 a depicts the start of the example process at152. A set of items 154, such as individual stock keeping units, areidentified for processing. The set of steps from 156 to 178 are thentaken for each of the identified set of items 154. In step 160, pastdata for an item is extracted from a data store 158 containing past datafor all items. This extracted past data for an item is set aside in atemporary data store as indicated at 162. At step 164 a set of candidatemodels is selected from a data store 166 containing available models.The set of candidate models is also set aside in a temporary data store168. At step 170 the selected candidate models are fit, and combiningweights are generated. The fitted models are stored in a data store instep 172, and the combining weights are stored in a data store in step176. The process of generating fitted models and generating combiningweights is repeated for each item as identified at step 178. Once theloop of steps 156-178 is iterated for all items, the process ends atstep 180.

FIG. 7 b illustrates step 170 in additional detail where the selectedmodels are fitted and combining weights are computed at 200. The modelfitting and combining weight generation begins at step 202. As indicatedat step 204, for each model within the selected candidate model subset168 for an item, the loop of steps 204-210 is executed. In step 206, amodel is fitted according to extracted data 162 for the item.Additionally, the information criteria calculation is performed for eachmodel. The fitted model along with the information criteria are storedas shown at 208. The fitting and information criteria calculation loopof 204-210 is repeated for each of the candidate subset models stored at168. Once the loop 204-210 is completed for each of the models, thecombining weights are computed at step 212 using the informationcriteria values calculated in step 206. The fitting and combining weightgenerating step 170 is then completed, and the fitted models are storedat step 172 and combining weights are stored at step 176.

FIG. 7 c illustrates at 300 a process for generating output forecastsbased on the stored fitted models 176 and combining weights 176. Theprocess for generating output forecasts begins at step 302. A set ofitems 154, such as individual stock keeping units, are identified forprocessing. The set of steps from 304 to 320 are then taken for each ofthe identified set of items 154. In step 308, past data for the item isextracted from a data store 306. The past data 306 in FIG. 7 c may bedifferent data than the past data 158 in FIG. 7 a used to fit themodels, as the past data 306 of FIG. 7 c may be new or updated data toreflect transactions or other occurrences since the model fitting stepsof FIG. 7 a. The extract data 310 is stored in a temporary data store.In step 312, the stored fitted models 172 and combining weights 176 areaccessed and placed into temporary storage 314. In step 316, a forecastis generated for each of the fitted models 172 in light of the extracteddata 310 and the resulting forecasts are weighted and summed. Calculatedforecasts are stored as shown at 318, and the loop 304-320 is repeatedfor remaining items to be forecast. The stored forecasts 318 may then beoutput as shown at 322 such as by forwarding the forecasts to businessapplications needing forecasts as shown at 324.

FIG. 7 d illustrates at 400 a process for generating a weighted averageforecast for an item. The process begins at step 402 and proceeds tostep 404 which begins a loop to be executed for each of the storedfitted models 172. In step 406, a forecast is computed for the fittedmodel being processed in the loop iteration in light of the data 310extracted for the item. The computed forecast is multiplied by thecombining weight 176 associated with the fitted model 172 and stored asshown at 408. The loop 404-410 is then repeated for each of the fittedmodels 172. After weighted forecasts 408 have been generated for each ofthe fitted models, the weighted forecasts 408 are summed to computed acombined multimodel forecast in step 412. The process then returns toFIG. 7 c for the storage step 318, and repetition of the loop 304-316for remaining items to be forecast.

While examples have been used to disclose the invention, including thebest mode, and also to enable any person skilled in the art to make anduse the invention, the patentable scope of the invention is defined byclaims, and may include other examples that occur to those skilled inthe art. Accordingly, the examples disclosed herein are to be considerednon-limiting. As an illustration, the systems and methods may beimplemented on various types of computer architectures, such as forexample on a single general purpose computer or workstation (as shown at800 on FIG. 8), or on a networked system, or in a client-serverconfiguration, or in an application service provider configuration.Additionally, a system may include all of the features described in thisspecification or any combination thereof.

It is further noted that the systems and methods may include datasignals conveyed via networks (e.g., local area network, wide areanetwork, internet, etc.), fiber optic medium, carrier waves, wirelessnetworks, etc. for communication with one or more data processingdevices. The data signals can carry any or all of the data disclosedherein that is provided to or from a device.

Additionally, the methods and systems described herein may beimplemented on many different types of processing devices by programcode comprising program instructions that are executable by the deviceprocessing subsystem. The software program instructions may includesource code, object code, machine code, or any other stored data that isoperable to cause a processing system to perform methods describedherein. Other implementations may also be used, however, such asfirmware or even appropriately designed hardware configured to carry outthe methods and systems described herein.

The systems' and methods' data (e.g., associations, mappings, etc.) maybe stored and implemented in one or more different types ofcomputer-implemented ways, such as different types of storage devicesand programming constructs (e.g., data stores, RAM, ROM, Flash memory,flat files, databases, programming data structures, programmingvariables, IF-THEN (or similar type) statement constructs, etc.). It isnoted that data structures describe formats for use in organizing andstoring data in databases, programs, memory, or other computer-readablemedia for use by a computer program.

The systems and methods may be provided on many different types ofcomputer-readable media including computer storage mechanisms (e.g.,CD-ROM, diskette, RAM, flash memory, computer's hard drive, etc.) thatcontain instructions for use in execution by a processor to perform themethods' operations and implement the systems described herein.

The computer components, software modules, functions, data stores anddata structures described herein may be connected directly or indirectlyto each other in order to allow the flow of data needed for theiroperations. It is also noted that a module or processor includes but isnot limited to a unit of code that performs a software operation, andcan be implemented for example as a subroutine unit of code, or as asoftware function unit of code, or as an object (as in anobject-oriented paradigm), or as an applet, or in a computer scriptlanguage, or as another type of computer code. The software componentsand/or functionality may be located on a single computer or distributedacross multiple computers depending upon the situation at hand.

1. A computer-implemented method for automatically generating a weightedaverage forecast model comprising: receiving a plurality of forecastingmodels; receiving time series data; optimizing at least one parameter ofeach of the received forecasting models utilizing the received timeseries data; generating a weighting factor for each of the plurality ofoptimized forecasting models utilizing an information criteria valueindicating fit quality of each of the optimized forecasting models; andstoring the generated weighting factors in a computer-readable medium.2. The method of claim 1, further comprising: generating a forecastedoutput for each of the optimized forecasting models; and outputting aweighted average of the forecasted output from each of the optimizedforecasting models by weighting each of the forecasted outputs accordingto the generated weighting factor.
 3. The method of claim 1, furthercomprising: receiving updated time series data; generating a forecastedoutput for each of the optimized forecasting models utilizing theupdated time series data; and outputting a weighted average of theforecasted output from each of the optimized forecasting models byweighting each of the forecasted outputs according to the storedweighting factor.
 4. The method of claim 3, wherein the receivingupdated time series data, generating a forecasted output, and outputtinga weighted average are repeated over a plurality of time periods.
 5. Themethod of claim 2, wherein the outputted weighted average indicatesforecasted monthly sales of a product.
 6. The method of claim 2, whereinthe method is repeated a plurality of times such that the automaticforecasting is executed for a plurality of stock keeping units.
 7. Themethod of claim 1, wherein an information criterion type to be utilizedis automatically selected.
 8. The method of claim 1, wherein the timeseries data includes data representative of operating a physical systemover a period of time.
 9. The method of claim 8, wherein the physicalsystem is a system selected from the group consisting of a manufacturingsystem, a grocery store chain, a retail store chain, and combinationsthereof.
 10. The method of claim 1, wherein the at least one parameterof each of the received forecasting models is optimized according to aleast squares regression.
 11. The method of claim 1, wherein theinformation criteria value utilized for each of the weighting factors isan Akaike Information Criterion.
 12. The method of claim 11, wherein theAkaike Information Criterion (AIC) is calculated according to theformula:AIC=−2ln(L)+2·P, wherein ln(L) is a natural log of a likelihood of theoptimized forecasting model; and wherein P is a number of fittedparameters in the optimized forecasting model.
 13. The method of claim11, wherein the Akaike Information Criterion (AIC) is calculatedaccording to the formula:AIC=n·ln(mse)+2·P, wherein ln(mse) is a natural log of mean squarederror; wherein n is a number of data points to which the optimizedforecasting model is calibrated; and wherein P is a number of fittedparameters in the optimized forecasting model.
 14. The method of claim1, wherein the information criteria weight value utilized in generatingthe weighting factor for each of the optimized forecasting models is anadjusted Alkaike Information Criterion (AICc) calculated according tothe formula:AICc=AIC+(2·P·(P+1))/(n−P−1), wherein AIC is a calculated AkaikeInformation Criterion for the optimized forecasting model; wherein n isa number of data points to which the optimized forecasting model iscalibrated; and wherein P is a number of fitted parameters in theoptimized forecasting model;
 15. The method of claim 1, wherein theinformation criteria weight value utilized in generating the weightingfactor for each of the optimized forecasting models is an BayesianInformation Criterion (BIC) calculated according to the formula:BIC=−2·ln(L)+ln(n)·P, wherein ln(L) is a natural log of a likelihood ofthe optimized forecasting model; wherein n is a number of data points towhich the optimized forecasting model is calibrated; and wherein P is anumber of fitted parameters in the optimized forecasting model;
 16. Themethod of claim 1, wherein generating a weighting factor for each of theplurality of optimized forecasting models utilizing an informationcriteria value indicating fit quality of each of the optimizedforecasting models further comprises: calculating an informationcriteria delta value for each of the optimized forecasting modelsindicating a difference between the information criteria value for eachoptimized forecasting model and a lowest information criteria valuecalculated for the optimized forecasting models; calculating raw weightsfor each of the optimized forecasting models based on the correspondingcalculated information criteria delta value; and calculating normalizedweights for each of the optimized forecasting models based on thecorresponding calculated raw weight.
 17. The method of claim 16, whereinthe raw weights (w_(raw)) are computed according to the formula:w _(raw) =exp(−Δ/2), wherein Δ is the calculated information criteriadelta for an optimized forecasting model.
 18. The method of claim 16,wherein the raw weights (w_(raw)) are computed according to the formulaw _(raw) =exp(λ·−Δ/2) wherein Δ is the calculated information criteriadelta for an optimized forecasting model; and wherein λ is an adjustmentfactor that adjusts the raw weights such that equal weights are assignedto all optimized forecast models as selected values for λ approach zero;a weight of one is assigned to the optimized forecasting model with alowest calculated information criteria value with weights of zero forall other optimized forecasting models as values much greater than oneare selected; and weights exhibiting hybrid characteristics are assignedto the optimized forecasting models for values in between.
 19. Themethod of claim 16, wherein the adjustment factor, λ, is user selected.20. The method of claim 1, wherein the information criteria valuefurther indicates model complexity of each of the optimized forecastingmodels.
 21. An automatic forecasting system, comprising: a plurality offorecasting models; a file containing time series data indicative oftransactional activity; a model fitter configured to receive theplurality of forecasting models and the file of time series data and tooptimize at least one parameter of each of the plurality of forecastingmodels based on the file of time series data; and a model evaluatorconfigured to receive the plurality of optimized forecasting models andto generate a weighting factor utilizing an information criteria foreach of the optimized forecasting models indicating fit quality of eachof the optimized forecasting models.
 22. The automatic forecastingsystem of claim 21, further comprising: a forecast calculator configuredto receive the plurality of optimized forecasting models and to generatea forecasted output for each of the plurality of optimized forecastingmodels; and a weighted average calculator configured to receive theforecasted outputs calculated for each of the plurality of optimizedforecasting models and corresponding weighting factors and to computeand output a weighted average of the forecasted outputs by weightingeach of the forecasted outputs according to the generated weightingfactor.
 23. The automatic forecasting system of claim 21, furthercomprising: a data store configured to receive and store the generatedweighting factors such that the forecast calculator is run with updatedtime series data to produce a plurality of forecast outputs; wherein theplurality of forecast outputs are combined with the stored generatedweighting factors to calculate a weighted average of the forecastedoutputs.
 24. The automatic forecasting system of claim 22, wherein theweighted average calculator is configured to output a weighted averageindicating forecasted sales of a product.
 25. The automatic forecastingsystem of claim 21, wherein the automatic forecasting system isconfigured to operate repeatedly such that forecasts for a plurality ofstock keeping units are outputted.
 26. The automatic forecasting systemof claim 21, wherein the model evaluator is configured to receive userinput for selecting the information criteria type to be utilized. 27.The automatic forecasting system of claim 21, wherein the filecontaining time series data includes data representative of operating aphysical system over a period of time.
 28. The automatic forecastingsystem of claim 27, wherein the physical system is a system selectedfrom the group consisting of a manufacturing system, a grocery storechain, a retail store chain, and combinations thereof.
 29. The automaticforecasting system of claim 21, wherein the information criteriacalculated is a Akaike Information Criterion.
 30. The automaticforecasting system of claim 21, wherein the information criteria foreach of the optimized forecasting models further indicates modelcomplexity.
 31. The method of claim 1, wherein the generated weightingfactors are stored in a random access memory.
 32. The method of claim 2,wherein the outputted weighted average is indicative of a forecastedfuture values for a business activity selected from the group consistingof: monetary sales of a product, quantity of sales of a product,monetary value of market demand of a product, physical quantity ofmarket demand for a product, inventory needs at a retail outlet,quantity of order by an identified customer, quantity of a resourceneeded for a production process, volume of traffic, transportationlogistics, quantity of service requests, stock price, stock tradingvolume, commodity trading volume, commodity usage, product consumption,population change, average income, average wealth, likelihood of defaulton a loan, currency exchange rate, tax rate, volume of open marketactivity of U.S. Federal Reserve system, average temperature, andaverage rainfall.
 33. The method of claim 2, wherein the outputtedweighted average is indicative of a forecasted future value over a timeperiod selected from the group consisting of: calendar years, fiscalyears, quarters of years, moths, weeks, days, hours, minutes, seconds,and combinations and multiples thereof.